// 语言第四章 函数
// 当函数名大写。构造函数
function Cat(name) {
    // 给一组对象添加属性
    this.name = name;
    this.makeSound = function() {
        console.log('哈哈哈');
    }

}
// 是一个构造函数
// 函数也是对象
// js 函数对象上有prototype属性
// 共有的方法放到prototype 对象中
// console.log(Cat);
// Cat.prototype.makeSound = function() {
//     console.log('哈哈哈');
// }
Cat.prototype.eat = function() {
    console.log('干饭');
}
Cat.sayHi = function() {
        console.log('你好啊');
    }
    // 同一组对象 共同的类方法，属性模板
var xm = new Cat('小黑');
xm.makeSound();
xm.eat();
console.log(xm.name);
xm.constructor.sayHi();
// var xh = new Cat('小哈');
// console.log(xm == xh);
// //判断两个对象是兄弟
// console.log(xm.constructor == xh.constructor);
// // 判断对象是某类的实例
// // typeof [] 
// console.log(xm instanceof Cat);
// let obj = new Object(); //对象字面量
// console.log(obj);